r26
r12
1[목차]
r1

(새 문서)
2설치가 어려운 Arch Linux의 설치 방법을 정리해 두었다. [[https://wiki.archlinux.org/title/Installation_guide|최신 정보는 여기에서 확인 가능하다.]]
r5
3== 쉬운 방법? ==
r17
4Archinstall를 이용하거나, EndeavourOS, Manjaro Linux같은 쉬운 설치를 지향하는 Arch 파생 베포판을 사용하자. 또한 파티션을 건드려야하는 등, 잘못하면 시스템이 날아갈 수도 있으니 미리 가상머신 등에서 미리 도전해보자.
r1

(새 문서)
5== 설치 환경 부팅하기 ==
6[[https://archlinux.org/download/#download-mirrors|다운로드 주소]][* 한국은 south korea]
r18
7여기서 ctrl + F로 자신이 살고 있는 나라를 검색하자.[* 사실 다른 것을 골라도 상관 없지만 속도가 느리다] 여기에서 iso 파일을 다운로드 하자. 가능하면 체크섬도 다운로드하여 파일을 검증하면 좋다. [* 이는 민트 리눅스 사이트 해킹사건으로 인해 체크섬 검증을 한 사람들이 털렸던 일같은 사례가 발생하는 것을 막기 위해서이다.]
r1

(새 문서)
8=== Windows ===
r3
9Windows 유저라면 [[https://rufus.ie/ko/|rufus]]를 다운받아 열면 된다. 창이 뜨면 장치 항목에 usb 목록이 뜨는데 필요 없는[* iso를 적용시키기 전에 데이터를 포멧해야하기 때문] 장치를 선택하고 부트 유형 항목에서 디스크 또는 ISO 선택 (please select)를 선택 후, 오른쪽에 있는 선택 버튼을 눌러 아까 다운로드 받은 iso파일을 선택한다.
r1

(새 문서)
10
11확인하고 선택 후에, 시작 버튼을 누른다. 이때 파일 기반으로 할지, dd이미지 모드로 쓸 지 선택하는 창이 뜨는데, dd를 선택한다.
12
13이제 펌웨어에서 부팅 항목에서 아까 만든 USB를 선택하면 부팅이 된다.
r14
14[[#부팅후|부팅 후에 해야할 작업은 여기를 참조해주세요]]
r1

(새 문서)
15=== Linux ===
r19
16~~어쩌피 다 알잖아요~~
17
r1

(새 문서)
18터미널 에뮬레이터 혹은 bash를 사용해 lsblk를 입력하여 USB의 블럭 디바이스 확인.[* 아마 /dev/sd* 형태일 것이다.]
r20
19{{{#!syntax shell
20sudo dd if=<아까 받은 iso 파일> of=<블럭 디바이스 주소> bs=4M status=progress oflag=sync
21sync
22}}}를 입력하면 된다.
r1

(새 문서)
23
24이제 펌웨어에서 부팅 항목에서 아까 만든 USB를 선택하면 부팅이 된다.
25[[#부팅후|부팅 후에 해야할 작업은 여기를 참조해주세요]]
26=== MacOS ===
27=== FreeBSD ===
r14
28=== NetBSD ===
r1

(새 문서)
29== 인터넷 연결[anchor(부팅후)] ==
30렌선을 사용중이라면 대부분 따로 셋팅은 안해도 된다. Wifi를 사용중이라면 iwd의 iwctl을 이용하여 연결 하자.
31
r13
32iwctl을 입력하여 iwctl을 킨 후, station list를 이용해 네트워크 디바이스를 찾은 후(대부분 wlan0이라는 이름을 갖고 있음) station <디바이스> connect[* 숨겨진 네트워크라면 connect-hidden] <wifi 이름>을 입력후, 비밀번호가 있으면 비밀번호를 입력후에 quit을 쳐서 빠져나오자. 그후 dhcpcd를 입력하자.
r1

(새 문서)
33
r21
34ping 8.8.8.8로 인터넷 연결을 테스트 할 수 있다.[* 근데 ~~그럴 일은 없지만~~ 구글 dns서버가 터지는 경우도 있으니, 0.0.0.0같은 가른 dns서버에도 핑을 날려보자]
r1

(새 문서)
35== 파티션 만들기 ==
36fdisk <설치할 장치의 경로>를 입력해 fdisk를 킨다.[* lsblk를 입력하여 참고하자]
37
38기존에 있는 파티션을 줄이거나[* EFI 1G, swap은 인터넷에 검색하며 알맞은 크기를 고르고, 루트 파티션도 자신이 필요한 만큼 고르자. 그리고 그만큼 기존 파티션을 줄이면 된다.] g, [*주의 {{{#red 데이터를 초기화 시키는 방법이니, 새 하드가 아니라면 사용하진 말자. 또한( 만약 사용했다면 q를 눌러서 빠져나오면 괜찮다. 아직 실제로 디스크에 쓰지 않았기 때문}}}](GPT, UEFI), o[*주의](MBR, BIOS)파티션을 만들 수 있게 한다.
r24
39|__'''파티션 레이아웃 추천'''__| EFI 파티션 || 루트 파티션 || Swap 파티션 ||
40|| 약 1G || 나머지 || 자신의 램의 크기 ||
r4
41
r22
42n을 입력하면 파티션을 만들 수 있다. 참고로 파티션의 끝을 할 때 +1G같이 상대적인 위치를 기반으로 정할 수도 있으니 참고 또한 이때 아무것도 입력하지 않고 엔터를 누르면 최대 크기로 파티션을 만들 수도 있다.
r7
43
r1

(새 문서)
44p를 눌러 알맞은 파티션 레이아웃인지 확인 후, w를 입력해 디스크에 쓰자.
r4
45
r22
46이러한 cli툴이 어렵다면 Windows환경에서 Win + X를 눌러 디스크 관리에서 편집하거나, Linux 그레픽 환경이라면 Gparted, TUI 인터페이스를 원하면 cfdisk[* Arch Installation Media에 내장]를 사용하는 것을 추천한다.
r1

(새 문서)
47== 파일 시스템 만들기 ==
r23
48mkfs.fat -F 32 <아까 만든 1G짜리 파티션>[* fdisk에서 p를 입력 시, 경로를 확인 가능하다.]를 입력하자.[*UEFI라면 시스템이 UEFI일 시에만 이 명령어를 실행하자]
r4
49
r1

(새 문서)
50mkfs.swap <스왑 파티션 주소>를 입력해 SWAP 파티션을 포멧한다.
r2
51
52mkfs.ext4 <루트 파티션>을 입력해 루트 파티션을 포맷하자.
53== 파일 시스템 마운트 ==
54mount /mnt <루트>
55mount /mnt/boot <EFI 파티션> --mkdir[*UEFI라면]
56swapon <swap 파티션>
57== pacstrap ==
58pacstrap -K /mnt base linux linux-firmware
59라는 명령어로 기본적인 페키지를 설치한다.
60== fstab ==
r4
61genfstab -u >> /mnt/etc/fstab
62Fstab은 부팅 작업중에 디스크를 마운트 할 때 참조되는 파일인데, 결함이 있거나 없으면 부팅시 emergency 모드로 진입하니 주의.
r2
63== chroot ==
r4
64arch-chroot /mnt를 입력해 아까 설치한 아치리눅스에 진입하여 더 많은 작업을 해준다. chroot를 안 쓰는 이유는 arch-chroot는 dev 마운트, proc등 여러개를 한꺼번에 마운트해주기 때문.
65
r2
66먼저 필요한 페키지를 설치한다.
r4
67pacman -S vim bash-completion less sudo grub[*멀티부트] os-prober[*멀티부트] iwd(wifi) dhcpcd efibootmgr(UEFI)
68 * vim 텍스트 에디터. 익숙하지 않으면 nano 쓰는 것을 추천한다.
69 * bash-completion tap눌러서 명령어 자동완성 해주는 그거 맞다.
r25
70 * less cli 환경에서 유용하게 쓰인다. 너무 길어서 stdout이 잘리는 프로그렘 옆에 cat a.txt | less를 쓰는 등 활용이 가능하다.
71 * sudo ~~Suit Up and DO~~ 권한상승 프로그램 최근에 보안 취약점이 발견되서인지는 몰라도, rust로 만든 sudo-rs가 나왔다.
r4
72 * grub 멀티부팅 지원 부트로더. 리눅스만 쓰면 LILO, SystemDboot도 나쁘지 않은 선택.
73 * os-prober 멀티부팅 시, grub 설정을 더 편하게 만들어주는 프로그렘
r25
74 * iwd wifi 쓸 시 필요. networkmanager라는 대채품이 있다.[* plasma 쓸 예정이라면 iwd 대신 이걸 쓰자]
r4
75=== 부트로더 ===
76==== GRUB ====
77UEFI의 경우:
r15
78grub-install --efi-directory=/mnt/boot
79레거시의 경우:
r4
80grub-install --boot-directory=/mnt/boot
81
82usr/bin/grub-mkconfig를 편집하여 GRUB_DISABLE_OS_PROBER를 false로 바꾸고
83
84grub-mkconfig -o /boot/grub/grub.cfg를 실행하여 설정 파일을 만든다.
85==== SystemD boot ====
86bootctl --esp-path=/boot \--boot-path=/boot install
r15
87따로 뭐 설치할 필요가 없다. (멀티부팅은 안되는듯)
r16
88=== 나머지 ===
89/etc/hostname를 수정해 컴퓨터 이름을 정하고
90
r15
91passwd를 사용하여 루트의 비번을 바꾸고
r5
92
93systemd enable로 dhcpcd, iwd 등등 여러 서비스를 활성화 한 후, exit을 입력해 빠져나온다.
r4
94== reboot ==
95이제 설치가 완료되었으니 다시시작을 해서 아치리눅스로 부팅하자. [* ctrl + alt + del 혹은 reboot 명령어 입력]
r5
96== 기본 셋팅 ==
r2
97=== 유저 추가 ===
r8
98루트로서 시스템을 운영하는 것은 큰 위험이 따르며, 임베디드 시스템 같은 특수한 경우가 아니라면 쓰지 않는 것을 추천한다. (또한 makepkg는 root로서의 실행을 거부) 이러한 문제를 해결하기 위해 사용자를 추가하고, 권한이 필요한 경우는 sudo를 사용하는 등 임시로 root로서 명령어를 실행하는 등의 사용이 추천된다.
99useradd -m <유저 이름>를 사용해 유저를 만들어 준다.
100
101passwd <유저 이름>을 사용하여 유저의 비번을 바꾼다.
102
103
104EDITOR=<vim, nano 등등> visudo를 입력하여 sudo 설정을 편집한다.
105
106<유저 이름> ALL=(ALL:ALL) ALL를 추가해주면 된다.
107=== YAY ===
108[[Arch Linux#s-5.3.1|여기 참고]]
109=== GUI ===
r11
110리눅스 환경에서 한글을 쓰려면 그레픽 환경이 (거의)필수적이다.[* jfbterm등을 쓰면 유니코드를 볼 수 있다.] 디스플레이 서버로는 Xorg, Wayland정도가 있고, Desktop Environmant로는 plasma, Xfece, gnome, cinnamon 등이 있다.
r26
111==== 한글 입력(Xorg) ====
112한글 입력은 ibus, ibus-hangul을 많이쓴다. 옛날에 Wayland 환경에서는 특정 프레임워크를 쓰는 엡에서는 입력이 힘들었었다.
113
114Pacman으로 ibus와 ibus-hangul을 설치 후, .xprofile[* ~/.xprofile]을{{{
115export GTK_IM_MODULE=ibus
116export QT_IM_MODULE=ibus
117export XMODIFIERS=@im=ibus
118ibus-daemon -drx}}}로 수정 후 다시 로그인 한다.[* 인터넷 보면 .bashrc에 넣으라는 말도 많이 보이는데, 셸을 bash를 쓰지 않으면 먹통일 뿐더러 X환경에 진입 후에도 어찌어찌 터미널을 켜서 bash를 켜야지 된다. .xinitrc에 넣어도 딱히 상관 없다.]
r11
119==== Plasma ====
r8
120sudo pacman -S plasma dolphin ark chromium konsole kate를 입력해 플라즈마와, GUI 엡들을 깔아준다.
r26
121 * plasma 윈도우 메니저. 기본 엡들이랑[* 근데 파일탐색기, 압축관리자, 터미널 에뮬레이터 등은 안딸려온다...] sddm이 딸려온다.
r8
122 * dolphin 파일 탐색기
123 * ark 압축파일 관리
124 * chromium 크로뮴. 크롬 확장이 호환된다. Plasma에서 만든 컨커러라는 브라우저가 있기는 한데, 찐들만 쓰는 듯 하다.
125 * konsole 터미널
126 * Kate 메모장 gedit이라는 --경젱자--대안도 있다. 이는 gnome에서 만든 것.
127
r26
128sudo systemctl enable sddm[* 컴터 시작시 자동실행 sddm이 싫으면 대안으로 lightdm을 사용 가능하다. sddm, lightdm은 로그인 화면이라 생각하면 된다.]
r8
129sudo systemctl start sddm으로 로그인 화면을 띄운다.
130
r26
131처음 plasma를 키면 한국어가 tofo로 표시될텐데, 그냥 인터넷에서 달무리, 네이버 나눔고딕코딩 등 한글 지원 폰트를 다운받아서 쓰면 된다.--뭐여 내 맑은고딕 돌려줘요--[* ms거다.]